#include <iostream>
#include <string>
#include <jsoncpp/json/json.h>


class Person
{
public:
    std::string _name;
    int _age;
};

int main()
{
    // // 构建结构化数据
    // Person p;
    // p._name = "Jack";
    // p._age = 18;

    // // 创建 Value 对象
    // Json::Value root;
    // root["name"] = p._name;
    // root["age"] = p._age;

    // // 序列化
    // // Json::FastWriter writer;
    // Json::StyledWriter writer;
    // std::string retStr = writer.write(root);

    // // 打印序列化数据
    // std::cout << retStr << std::endl;

    // Json 字符串
    std::string Json = "{\"age\":18,\"name\":\"Jack\"}";

    // 创建 Value 对象
    Json::Value root;

    // 创建 Reader 对象
    Json::Reader reader;
    // 反序列化
    reader.parse(Json, root);

    // 访问 Json 数据
    std::string name = root["name"].asString();
    int age = root["age"].asInt();

    // 打印
    std::cout << "name: " << name << std::endl;
    std::cout << "age: " << age << std::endl;
    return 0;
}